{ extraPkgsFn ? (pkgs: [])
  , shellName ? "fhs"
  , pkgs ? import <nixpkgs> {}
}:
(
  let
    extraPkgs = extraPkgsFn pkgs;
  in

  pkgs.buildFHSUserEnv rec {
    name = shellName;
    runScript = "zsh -i";
    targetPkgs = pkgs: (
      with pkgs; [
      # Edit with your needs
      zsh
    ] ++ extraPkgs
  );
    profile = ''
      export NIX_FHS=${name}
    '';
  }
).env
